package com.wu.company.entity;

import javax.persistence.*;
import java.util.Collection;

/**
 * POJO类Utigradetask
 */
@Entity
@Table(name = "UTIGRADETASK")
public class Utigradetask implements java.io.Serializable {
	private static final long serialVersionUID = 1L;

	/** 属性ID */
	private UtigradetaskId id;

	/** 属性保险价值 */
	private String value;

	/** 属性备注 */
	private String remark;

	/** 属性标志 */
	private String flag;
	
	/** 属性utigrade */
	private Utigrade utigrade;
	
    private String editType = "";
    private String groupCodes[];
    private String ruleGroupCodes[];
    private String groupName = "";
    private String taskName = "";
    private String checked = "false";// 此字段为在jsp中显示checkbox中选中与不选中做标记
    private String taskParentCode = "";// task的父task的名字
    private Collection GradeTaskList;
	/**
	 * 类Utigradetask的默认构造方法
	 */
	public Utigradetask() {
	}

	/**
	 * 属性ID的getter方法
	 */
	@EmbeddedId
	@AttributeOverrides({
			@AttributeOverride(name = "gradeCode", column = @Column(name = "GRADECODE")),
			@AttributeOverride(name = "taskCode", column = @Column(name = "TASKCODE")) })
	public UtigradetaskId getId() {
		return this.id;
	}

	/**
	 * 属性ID的setter方法
	 */
	public void setId(UtigradetaskId id) {
		this.id = id;
	}

	/**
	 * 属性保险价值的getter方法
	 */

	@Column(name = "VALUE")
	public String getValue() {
		return this.value;
	}

	/**
	 * 属性保险价值的setter方法
	 */
	public void setValue(String value) {
		this.value = value;
	}

	/**
	 * 属性备注的getter方法
	 */

	@Column(name = "REMARK")
	public String getRemark() {
		return this.remark;
	}

	/**
	 * 属性备注的setter方法
	 */
	public void setRemark(String remark) {
		this.remark = remark;
	}

	/**
	 * 属性标志的getter方法
	 */

	@Column(name = "FLAG")
	public String getFlag() {
		return this.flag;
	}

	/**
	 * 属性标志的setter方法
	 */
	public void setFlag(String flag) {
		this.flag = flag;
	}

	@ManyToOne(fetch = FetchType.EAGER)
	@JoinColumn(name = "GRADECODE", nullable = false, insertable = false, updatable = false)
	public Utigrade getUtigrade() {
		return utigrade;
	}

	public void setUtigrade(Utigrade utigrade) {
		this.utigrade = utigrade;
	}
	@Transient
	public String getEditType() {
		return editType;
	}

	public void setEditType(String editType) {
		this.editType = editType;
	}
	@Transient
	public String[] getGroupCodes() {
		return groupCodes;
	}

	public void setGroupCodes(String[] groupCodes) {
		this.groupCodes = groupCodes;
	}
	@Transient
	public String[] getRuleGroupCodes() {
		return ruleGroupCodes;
	}

	public void setRuleGroupCodes(String[] ruleGroupCodes) {
		this.ruleGroupCodes = ruleGroupCodes;
	}
	@Transient
	public String getGroupName() {
		return groupName;
	}

	public void setGroupName(String groupName) {
		this.groupName = groupName;
	}
	@Transient
	public String getTaskName() {
		return taskName;
	}

	public void setTaskName(String taskName) {
		this.taskName = taskName;
	}
	@Transient
	public String getChecked() {
		return checked;
	}

	public void setChecked(String checked) {
		this.checked = checked;
	}
	@Transient
	public String getTaskParentCode() {
		return taskParentCode;
	}

	public void setTaskParentCode(String taskParentCode) {
		this.taskParentCode = taskParentCode;
	}
	@Transient
	public Collection getGradeTaskList() {
		return GradeTaskList;
	}

	public void setGradeTaskList(Collection gradeTaskList) {
		GradeTaskList = gradeTaskList;
	}
	

}
